/**
 * Copyright © 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.modules.guide.mapper;

import com.jeeplus.modules.guide.entity.QueueCount;
import com.jeeplus.modules.guide.entity.YmbcsUser;
import com.jeeplus.modules.guide.entity.YmbcsValue;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Mapper
@Repository
public interface MobileSilentMapper {
    Map<String,Object> findWaitTimeAndNum(@Param("number") String number, @Param("areaId") String areaId, @Param("charsId") String charsId);
    List<QueueCount> findWaitTimeAndNumWin(@Param("areaId") String areaId, @Param("typeValue") String typeValue);
    void inserWxUser(@Param("number") String number, @Param("areaId") String areaId, @Param("doTime") String doTime, @Param("openid") String openid,@Param("subscribe") String subscribe,@Param("nickname") String nickname,@Param("tell") String tell,@Param("status") int status);
    HashMap<String,String> findWXUser(@Param("doTime") String doTime, @Param("number") String number, @Param("areaId") String areaId, @Param("status") int status);
    void updateWxUser(@Param("openid") String openid,@Param("subscribe") String subscribe,@Param("nickname") String nickname,@Param("doTime") String doTime, @Param("number") String number, @Param("areaId") String areaId, @Param("status") int status);
    List<Map<String,Object>> selectQueueByNumber(@Param("areaId") String areaId, @Param("number") String number);
    List<Map<String,Object>> selectLineByNumber(@Param("number") String number, @Param("areaId")String areaId);
    void intoUserHistory(int type,int waitNum,String tell,String areaId,String number,String winNo,String userNo,String idcard,String yyID,String doTime,String result);
    String findAreaNameValue(String areaId);
    void intoTellCount(String tell,String doTime,String number,String areaId);
    Integer getTellCount(String tell,String areaId,String number);
    void deleteTellCount();
    HashMap<String,Object> findWSValueByAreaId(String typeId);
    String findWSWino(String areaId,String typeNumber);
    HashMap<String,String> findAreaNameValueByNumber(@Param("number") String number);
    HashMap<String,Object> findWSValueByAreaIdByNumber(@Param("number") String number);
    Map<String, Object> findChars(String number,String areaId);
    void insertOnLine(@Param("number") String number, @Param("areaId") String areaId, @Param("doTime") String doTime, @Param("openid") String openid,@Param("subscribe") String subscribe,@Param("nickname") String nickname,@Param("tell") String tell,@Param("status") int status);
    int findCountToYY(String areaId,String number);
    int selectNumberCount(String areaId,String number);
    List<Integer> yyListValue();
    List<Integer> yyListValueQD(String startTime,String endTime);
    List<Integer> yyListValueDay();
    List<Integer> yyListValueWeek();
    List<Integer> yyListValueMonth();
    List<Integer> yyListValueThreeMonth();
    List<Integer> yyListValueYear();
    List<Integer> ymbcsValueListQD(String startTime,String endTime);
    List<Integer> ymbcsValueList();
    List<Integer> ymbcsValueListDay();
    List<Integer> ymbcsValueListWeek();
    List<Integer> ymbcsValueListMonth();
    List<Integer> ymbcsValueListThreeMonth();
    List<Integer> ymbcsValueListYear();
    List<String>findTypeIDByWinno(String areaId,List<String> list);
    HashMap<String,String> selectYMBCSValue(String idcard,String doTime);

    String findNumberTime(String areaId,String number);
    Integer findQueueCount(List<String> list,String doTime);
    HashMap<String,String> findWXPJValue(String id);
    String ymbcsEndTime(String number,String serviceTime);

    List<YmbcsUser> ymbcsQueueList();
    List<YmbcsUser> ymbcsQueueListDay();
    List<YmbcsUser> ymbcsQueueListWeek();
    List<YmbcsUser> ymbcsQueueListMonth();
    List<YmbcsUser> ymbcsQueueListThreeMonth();
    List<YmbcsUser> ymbcsQueueListYear();

    YmbcsUser findYmbcsValue(String areaId,String number,String serviceTime);
    List <YmbcsValue> ymbcsQueueValueById(String userId);

    List<YmbcsUser> ymbcsFindList();
    List<YmbcsUser> ymbcsFindListDay();
    List<YmbcsUser> ymbcsFindListWeek();
    List<YmbcsUser> ymbcsFindListMonth();
    List<YmbcsUser> ymbcsFindListThreeMonth();
    List<YmbcsUser> ymbcsFindListYear();

    List <YmbcsValue> ymbcsFindValueById(String userId);

    List<Map<String,String>> pjListByRCTDay();

    List<Map<String,String>> pjListByRCTAll();

    void pjListByRCTInto(String cardid,String typeName,String serverTime,String pjMark,String pjLevel);

}
